rather than just the current one.
Signed-off-by: Keir Fraser <keir@xensource.com>
void __attribute__((noreturn)) __machine_halt(void *unused)
{
for ( ; ; )
- safe_halt();
+ __asm__ __volatile__ ( "hlt" );
}
void machine_halt(void)
#include <xen/errno.h>
#include <xen/mm.h>
#include <xen/console.h>
+#include <xen/reboot.h>
#include <asm/regs.h>
#include <xen/delay.h>
#include <xen/event.h>
console_force_lock();
/* Wait for manual reset. */
- for ( ; ; )
- __asm__ __volatile__ ( "hlt" );
+ machine_halt();
}
static inline int do_trap(int trapnr, char *str,
#include <xen/mm.h>
#include <xen/irq.h>
#include <xen/symbols.h>
+#include <xen/reboot.h>
#include <asm/current.h>
#include <asm/flushtlb.h>
#include <asm/hvm/hvm.h>
console_force_lock();
/* Wait for manual reset. */
- for ( ; ; )
- __asm__ __volatile__ ( "hlt" );
+ machine_halt();
}
unsigned long do_iret(void)
#include <xen/symbols.h>
#include <xen/console.h>
#include <xen/sched.h>
+#include <xen/reboot.h>
#include <asm/current.h>
#include <asm/flushtlb.h>
#include <asm/msr.h>
console_force_lock();
/* Wait for manual reset. */
- for ( ; ; )
- __asm__ __volatile__ ( "hlt" );
+ machine_halt();
}
void toggle_guest_mode(struct vcpu *v)
{
console_lock = SPIN_LOCK_UNLOCKED;
serial_force_unlock(sercon_handle);
+ console_start_sync();
}
void console_force_lock(void)